package leetcode;

import java.util.Arrays;

public class Q0088 {
    public void merge(int[] nums1, int m, int[] nums2, int n) {
        int i = m;
        int j = n;
        int k = m + n;
        while (i > 0 && j > 0) {
            if (nums1[i - 1] >= nums2[j - 1]) nums1[--k] = nums1[--i];
            else nums1[--k] = nums2[--j];
        }
        while (i > 0) {
            nums1[--k] = nums1[--i];
        }
        while (j > 0) {
            nums1[--k] = nums2[--j];
        }
    }

    public static void main(String[] args) {
        Q0088 sl = new Q0088();
        int[] nums1 = {1, 3, 5, 7, 9, 0, 0, 0, 0};
        int[] nums2 = {2, 4, 6, 8};
        sl.merge(nums1, nums1.length - nums2.length, nums2, nums2.length);
        System.out.println(Arrays.toString(nums1));
    }
}
